TEA, a Tiny Encryption Algorithm

نویسندگان

  • David J. Wheeler
  • Roger M. Needham
چکیده

We give a short routine which is based on a Feistel iteration and uses a large number of rounds to get security with simplicity. Introduction We design a short program which will run on most machines and encypher safely. It uses a large number of iterations rather than a complicated program. It is hoped that it can easily be translated into most languages in a compatible way. The rst program is given below. It uses little set up time and does a weak non linear iteration enough rounds to make it secure. There are no preset tables or long set up times. It assumes 32 bit words. Encode Routine Routine, written in the C language, for encoding with key k[0] k[3]. Data in v[0] and v[1]. void code(long* v, long* k) { unsigned long y=v[0],z=v[1], sum=0, /* set up */ delta=0x9e3779b9, /* a key schedule constant */ n=32 ; while (n-->0) { /* basic cycle start */ sum += delta ; y += ((z<<4)+k[0]) ^ (z+sum) ^ ((z>>5)+k[1]) ; z += ((y<<4)+k[2]) ^ (y+sum) ^ ((y>>5)+k[3]) ; } /* end cycle */ v[0]=y ; v[1]=z ; } Basics of the routine It is a Feistel type routine although addition and subtraction are used as the reversible operators rather than XOR. The routine relies on the alternate use of XOR and ADD to provide nonlinearity. A dual shift causes all bits of the key and data to be mixed repeatedly. The number of rounds before a single bit change of the data or key has spread very close to 32 is at most six, so that sixteen cycles may su ce and we suggest 32. The key is set at 128 bits as this is enough to prevent simple search techniques being e ective. The top 5 and bottom four bits are probably slightly weaker than the middle bits. These bits are generated from only two versions of z (or y) instead of three, plus the other y or z. Thus the convergence rate to even di usion is slower. However the shifting evens this out with perhaps a delay of one or two extra cycles. The key scheduling uses addition, and is applied to the unshifted z rather than the other uses of the key. In some tests k[0] etc. were changed by addition, but this version is simpler and seems as e ective. The number delta, derived from the golden number is used where

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Crypt Analysis of the Tiny Encryption Algorithm in Key Generation

Encryption algorithms are used for security over wireless communications, but securing data also consumes resources. Major important factors to consider when designing a cryptographic system are performance, speed, size, and security. Tiny Encryption Algorithm (TEA), and the Extension of TEA (XTEA) are examples of cryptographic algorithms. There is a requirement to specify cryptographic strengt...

متن کامل

Hardware Implementation of Secure Communication in a Bus-Based Multi-Core System Using Tiny Encryption Algorithm

We propose to solve the problem of un-secure inter-core communication by using a hardware encryption method to encrypt data which is transmitted via the bus. Each time a core requests to read contents of the memory from other any other core, the data will be encrypted and then transmitted on the bus. TEA (Tiny Encryption Algorithm) is a simple and fast symmetric encryption method. In the proces...

متن کامل

Design and Implementation of an Encryption Algorithm for use in RFID System

The Tiny Encryption Algorithm (TEA) is a suitable lightweight cryptographic algorithm used in medium security systems such as RFID systems. The TEA is a fiestel structure used to satisfy the confusion and the diffusion properties to hide the statistical characteristics of the plaintext. However, TEA has few weaknesses, most notably from equivalent keys and related-key attacks. So, a Modified TE...

متن کامل

Design & Implementation of an Encryption Algorithm for use in RFID System

The Tiny Encryption Algorithm (TEA) is a suitable lightweight cryptographic algorithm used in medium security systems such as RFID systems. The TEA is a fiestel structure used to satisfy the confusion and the diffusion properties to hide the statistical characteristics of the plaintext. However, TEA has few weaknesses, most notably from equivalent keys and related-key attacks. So, a Modified TE...

متن کامل

Block Ciphers And Cryptanalysis

This report gives a basic introduction to block cipher design and analysis. The concepts and design principles of block ciphers are explained, particularly the class of block ciphers known as Feistel ciphers. Some modern block cipher cryptanalysis methods are demonstrated by applying them to variants of a weak Feistel cipher called Simplified TEA (STEA), which is based on the Tiny Encryption Al...

متن کامل

Demitasse: A "Small" Version of the Tiny Encryption Algorithm and Its Use in a Classroom Setting

This paper describes Demitasse, a cipher which is intended to be used by inexperienced students in a classroom setting. The cipher is based on the Tiny Encryption Algorithm (TEA), but the parameters have been reduced in order to allow the students to operate the cipher with paper and pencil rather than a computer. Nevertheless, students using the cipher should gain some understanding into the i...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1994